import { createStore } from "vuex";
import vuexPer from "vuex-persistedstate";
export default createStore({
  state: {
    studentList: [],
  },
  mutations: {
    add(state, obj) {
      let res = state.studentList.filter((item) => {
        return item.name == obj.name;
      });
      //filter 过滤的是一个数组 所以判断要判断 length不等于0
      if (res.length != 0) {
        alert("不能重复添加");
      } else {
        state.studentList.push(obj);
      }
    },
    remove(state, index) {
      state.studentList.splice(index, 1);
    },
    edit(state, obj) {
      console.log(obj);
      //传来 要修改的数据的下标 和 修改后的内容 就能在vuex中修改数据了
      state.studentList[obj.index] = JSON.parse(JSON.stringify(obj.val));
      // JSON.parse(JSON.stringify(obj.val)); 这里用了深复制 防止修改的时候 改变别的数据
    },
  },
  actions: {},
  modules: {},
  plugins: [vuexPer()],
});
